﻿#region imports

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using CondeNet.AssetManager.Business.Interface;
using CondeNet.AssetManager.Business.Model.Interface;

#endregion

namespace CondeNet.AssetManager.ProviderServices.DataModel
{
    public interface IAssetModelReaderFactory
    {
        // MetaData methods
        IMetaData GetMetaDataByID ( int metaDataId );
        List<IMetaData> GetAllMetaData ( );
        List<IMetaData> GetMetaDataByLanguageID ( int languageId );

        // AssetMetaData methods
        IAssetMetaData GetAssetMetaDataByID ( int assetMetaDataId );
        List<IAssetMetaData> GetAllAssetMetaData ( );
        List<IAssetMetaData> GetAssetMetaDataByAssetID ( int assetId );
        List<IAssetMetaData> GetAssetMetaDataByAssetIDLanguageID ( int assetId , int languageId );
        List<IAssetMetaData> GetAssetMetaDataByAssetIDStatusID ( int assetId , int statusId );

        // Asset methods
        IAsset GetAssetByID ( int assetId );
        List<IAsset> GetAllAsset ( );
    }
}
